package com.yhhvip.lottery.dao.mybatis.mapper;

import com.yhhvip.lottery.dao.mybatis.mapper.base.BaseMapper;
import com.yhhvip.lottery.dao.mybatis.model.LotActivityParticipants;
import com.yhhvip.lottery.dao.mybatis.model.LotActivityParticipantsExample;
import com.yhhvip.lottery.domain.ReqWonInfoVo;
import com.yhhvip.lottery.domain.res.ResParticipant;
import com.yhhvip.lottery.domain.res.ResWonInfoVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper
public interface LotActivityParticipantsMapper extends BaseMapper<Long, LotActivityParticipants, LotActivityParticipantsExample> {
    /**
     * @param map 参数实体
     * @author XOu
     * @description 中奖
     * @version 1.0
     * @date 2018/6/19
     * @modified
     */
    void updateByWon(Map<String, Object> map);

    /**
     * @param reqWonInfoVo 传参实体
     * @author XOu
     * @description 查询中奖信息
     * @version 1.0
     * @date 2018/6/20
     * @modified
     */
    List<ResWonInfoVo> searchWonInfo(ReqWonInfoVo reqWonInfoVo);

    /**
     * @author XOu
     * @description 定时查询小程序推送开奖模版消息数据
     * @version 1.0
     * @date 2018/6/22
     * @modified
     */
    List<ResParticipant> getSendMsgParticipants();

    /**
     * @param id 主键id
     * @author XOu
     * @description 发送消息后更新发送状态
     * @version 1.0
     * @date 2018/6/22
     * @modified
     */
    void updateByIsSend(long id);

    /**
     * @param searchType 查询类型
     * @author XOu
     * @description 获取参与人数数据
     * @version 1.0
     * @date 2018/6/26
     * @modified
     */
    Long getJoinCount(@Param(value="searchType") Integer searchType);
}
